package com.liangsong.designpattern.singleton;

/**
 * @author liangsong
 * @version 1.0 2025/1/9
 * 懒汉：懒加载，就是在需要的时候才回去创建对象
 * 注意instance不能是final
 * 实现时总是创建多个对象？？？
 * */
public class LazySingleton {
    private static volatile LazySingleton instance;

    private LazySingleton(){

    }

    public static LazySingleton getInstance(){
        if (instance==null){         //线程不安全
            System.out.println("constructor");// TODO:总是创建多个对象
            return new LazySingleton();
        }
        return instance;
    }

    public void test(){
        System.out.println(this.getClass().getName());
    }
}
